Embodiments described herein relate to methods and devices for expanding the storage capacity in a storage device in which the expansion process is performed solely by the storage device without erasing the existing content on the storage device.
There are techniques known in the prior art for expanding the storage capacity of a storage device via a host system. Some techniques only allow the storage capacity to be enlarged by reformatting the storage device, erasing the existing content in the process. Other techniques typically copy the existing content of the storage device into the host system's memory, reformat the storage device (re-writing any existing partitions and erasing the existing content), enable the expanded storage capacity, and then copy the previously existing content from the host system back into the storage device. Such techniques have limited utility when the host system has little or no storage capacity, and the existing content cannot be lost.
Furthermore, there are several use cases in which there is a incentive for a service provider or a retailer to sell a memory card or other type of storage device having a “logical” capacity which is lower than the “physical” capacity, and allowing the user to purchase additional storage capacity on the same storage device later, without reformatting the storage device and losing the existing content. Current technology requires the user to back-up the existing content, format the storage device, and restore the content back, a tedious and “non-user-friendly” operation.
Currently, it is possible to create several partitions in a storage device, disable some partitions, and re-enable the disabled partitions later upon request. Such an approach has several drawbacks. First, it is less convenient for a user to work with several partitions. For example, when working with large files, the storage utilization is less efficient. Second, working with partitions is limited. For example, Microsoft Windows® XP does not support partitions on removable devices. Furthermore, mobile handsets having proprietary operating systems (OS) that typically do not support memory-card partitions.
It would be desirable to have methods and devices for expanding the storage capacity in a storage device in which the expansion process is performed solely by the storage device without erasing the existing content on the storage device.